Hello everyone, Factorio 0.6.4 release has just been marked stable! Following our usual release procedure the 0.6 release has been around for a while. Users from the forum helped us to find the most annoying bugs and now the release is considered "serious bugs free". The release has been packed with features and new stuff. Here are the most significant gameplay improvements: The world map (and a minimap). These allows for a much better orientation in the world. The steel furnace (faster) and the electric furnace (requires no coal). Smelting resources is one of the basic tasks in the factory and these new furnaces provide interesting alternatives to using brute-force approach of many stone furnaces. Logistic robots can suplly the player directly. In the later stages of the game the player can focus more on managing and extending the factory and not running around collecting the created items. Modules and beacons. It is now possible to influence machine properties (speed, productivity, energy efficiency) with inserting module items. This way the assembling machines in the production bottleneck can be sped up without extending the production line. Improved terrain generator. The trees now follow the same fractal terrain generation as the terrain. This makes them look more realistic. Apart from the features we have focused a lot of energy on speed improvements as well. With larger factories the players often experienced slowdowns because too many objects have to be updated every tick. We have made optimizations to the way items move along the belts. These were the biggest "performance eaters" (there are often tons of items on the belts in the factory) so this helped quite a lot for the big factories. We also optimised the way graphical rendering works. This is mostly notable on the Windows operating system (our graphical library uses a different backend - d3d on the windows compared to the linux / mac - openGL). Another major improvement has been made to the core loop of the game. The graphical rendering can now run parallel to the game update using different threads. This can take advantage of at most two threads. And finally the render preparation phase (collecting the sprites to be rendered) has been parallelised as well. This can take advantage of multiple threads, we empirically tested that the best results are shown for 4 or 5 threads (given that there are enough cores for these threads to run on). Last but not least our artist has also done a lot of work. There is a new terrain and plenty of objects have new graphics (labs, car, chests, logistic robots, etc.). The game is less contrastive compared to early versions with RGB colors, on the other hand it is also more aesthetically pleasing now. As usual you can find the full changelog of the changes at our forum in the news section . The changelog is now available also directly in the game in the "About" dialog. As mentioned before, the work on 0.7 is in the full speed now together with preparations for the Steam Greenlight campaign. So stay tuned for more news.
The tradition is to open the friday facts by saying, that the new bugfix release is here, as well as saying that this one is definitely going to be the stable one. But this time we really think that 0.9.8 is going to be the one :). We spent very little time with the 0.9 branch as many things for 0.10 are in motion. As we already said we planned to start using the automated testing, and this week, Tomas finally achieved to revive the testing suite, so we will slowly cover the source code by tests while working. Not only this is needed for the reasons already said, but we need to test all the otherwise hard to test corner cases in network communication logic that is Kuba giving the basic shape to. I'm now doing the hard work of fixing the small errors in determinism. I play the game, while it is saved periodically, then I have to start the replay wait for diversion from the original and find out why it happened by inspecting the differences in the saves. This is cumbersome process, as some of the inconsistencies are very hard to find, but after a few days and several bugfixes, I was able to replay the first tutorial mission without errors while certainly making a new world record of the time to finish the mission :) I gave myself approximately 1.5 hours daily to play computer games, and when playing these and reading Ideas and suggestions on our forums, it gives me so many ideas of what could be done. It is depressing to know, that all of these ideas, even when considering just the good ones, are just not possible to be made. Fight mechanics, alien pets, water-heating/cooling circuits, other planets, supplying orbit, satellites, ending of the game, different vehicles, airplanes, late-game rts controls of building and combat robot minions, equipment (as in armor) based blueprints for combat robots, enemy/neutral/allied survivors, after-landing phase where you have to take care of the people, caves and underground mining, armored trains, 20 different additions to circuit network, nuclear energy that is not just boiler that runs on uranium, 10 different enemies with different types of behaviours and attacks, different types of enemy bases, forests on fire, working eco-system, other downsides of pollution, snow areas with snow particles on machines, rare random Fallout-like encounters, different energy sources, advanced train controls, disasters, flowing rivers, more complex mechanics of armor equipment, ... I could continue like this for a long time. We have already Ideas & suggestions section on our forums, but it might be nice to have something more organised, so people could add their ideas and vote/discuss what they think should have priority, or maybe there is a way how to do it directly on the forum, ideas? I was also thinking, that we might do some kind of technical development blog posts like this one about Starcraft 1 as we are certainly facing some interesting challenges or hard decisions from time to time, would anyone be interested in that? The following picture is the new version of basic electric pole. The main reason for the change was to make it less obstruct the view of the tiles behind and to avoid having the cable and the pole fall loosely when the cable has vertical direction. We are always eager to learn what you think at our forums.
Hello everyone, this is the third Factorio weekly update. It is scary how fast the week went by. The summer is definitely gone and it has been raining hard for the past two days here in Prague. We spent the weekend by playtesting the 0.7.1. The bugfixes were mostly finished and we were after the balancing. This resulted in two freeplay games in which we both (me and kovarex) managed to build and defend the Rocket Defense in a little bit more than 11 hours. We both used different strategies. Kovarex went after the logistic robots and the beacons, while I tried to keep my factory relatively small and was really focused on researching the rocket defense asap. With the balancing changes we made, the game seems to be well playable again. No more crazy medium biter attacks after 10 minutes. In my game I saw a first medium biter after cca 4 hours and the first big biter after about 9 hours of playing. That seems allright for the regular settings. After the weekend we focused on getting the 0.7.1 out. In the end we managed to do that on Tuesday night, after a full day of work on fixing small issues coming mostly from the Lua API refactoring. The 0.7.1 was received rather well. It still has some bugs though. Especially regarding the enemy expansion. There was this funny save where you stand in the middle of your factory and in like 20 seconds out of the blue sky there appears an enemy spawner and two worms right next to you:) So yeah, there will be 0.7.2. We will put in only bug fixes and will try hard to make this one the stable release for 0.7. After the hectic release we spent the next day trying to relax a bit and put plans together for the next iteration. More or less the plan is now clear. There are three priorities: New terrain - Originally we wanted to spend some time on the players' animation. But then a friend of ours came for a visit. He never saw the game before and his first remark was that the terrain is sh*t:) And he is sort of right. On top of that the terrain is omnipresent. We really want to polish the game as much as possible before the Greenlight campaign so we decided to take a shot at the new terrain and some doodads if there is time left. New main campaign - We consider the demo campaign more or less finished. It still needs some UI love but the content is there. However the main campaign (New Hope) is seriously lacking and it hasn't really changed since the Indiegogo. So one of the goals for the next iteration will be to extend this campaign to 5+ meaningful levels. Having multiple levels will also allow us to better explain some concepts (like trains, logistic robots or signals) to the player. New trailer - We cannot start a Greenlight campaign with the current trailer. It is painfully out of date. We have been discussing a lot of ideas and studying existing successful indie game trailers to come up with something entertaining and competitive. The details are not finished yet, but the main theme would be presenting a factory without "scene cuts". All the transitions between the consecutive scenes would be fluent and performed by elements in the factory. For instance - the camera follows the train which takes it to the next part of the factory. Albert has been onto the terrain for couple of days now. We were playing with an idea to use Wang tiles but in the end decided to go with different size variations of tiles for the same terrain. This should break the grid-like feel of the current terrain. Albert developed his own, simple yet clever technique for creating tile variations rather fast. Basically he creates the tileable edge of a single tile and then just changes the inside for every variation. Keeping everything as 3D models allows him to do all sorts of tricks (like changing the height gradient really fast). Some preliminary results look promising. Here is an example of dry dirt terrain with random machines on top of it: As before the link to the post is in the separate topic on the forum. So you can post your comments there
Hello, today the Factorio Friday Facts turn 18. That is considered an age of maturity in many countries. So the glass of Jagermeister on my desk is completely justified :) The time here in Prague feels just like whooshing around us faster and faster with the end of January approaching rapidly. That was the original estimate for the release of 0.9 but now it seems that it will take a week or two more. The usual "everything takes longer than expected" has applied this time as well. The current development version has placeholders for some new entities (like a plain rectangle box saying "oil refinery" or another one with "chemical plant") and we really want to make proper graphics for these and deliver the basics of new oil content as a whole package. Recently we got a bug report claiming that the game is too slow. The guy who posted it was right, the game was running well under 60fps. In our defence it needs to be added that his factory was pretty monstrous. It was actually the biggest one we have seen by far. Just to get an idea, his factory had 9000 solar panels, 15 000 laser turrets and thousands of logistic robots. So kovarex took it as a challenge to squeeze as much performance from the engine as possible taking this save as a reference. He has been working on it for the past couple of days. The most significant optimizations he made are: Efficient dispatch of pending logistic robots. This was probably the cause of the biggest slowdown in the given save. Wake-on-demand mechanism for inserters. Until now the inserters always asked every tick the objects in front of / behind itself whether they should transfer anything. Now, instead they put themselves to sleep and the object wakes them up when its state changes (that means there is a chance a transfer will be required). Improved cache locality for the electric energy network. The result: game update dropped from roughly 30 milliseconds per 1 update to about 10 milliseconds (and there is more to come). Of course not everybody will get this amount of performance improvement (the optimizations are aiming at the game update for big factories). But in general this batch of improvements pushes the bar for the size of the factory further up. The work on the oil industry has entered the last phase. The fluid and recipe mechanisms as well as new entities are ready and now it is all about adding the actual content. I have been studying the oil refining process quite a bit recently and also I took this opportunity to refresh some bits from my high school chemistry curriculum. The way it shapes now the oil industry will be a middle to late game resource. Its usage will start somewhere between the green and blue science pack and its products will cover a variety of areas (fuel, plastics, lubricants, explosives, etc.). There has been quite some discussion about the oil industry on the forums. If you are interested and want to contribute your opinion you can do so in this thread for instance. Kuba and Albert have been working together a bit on the integration of the new doo-dads into the map generator. The goal is to approach the scenery compositions shown in the previous posts . Though that is difficult (because those compositions are hand made and imho very good) the doo-dads should greatly improve the current flatness of the landscape anyway. On top of this Kuba has been busy with a neat feature when the game will natively treat zip archives as directories (so the saves / mods can be zip packages). And of course Albert's table is full of "oily stuff" - now comes the interesting part - the oil mining drill, the oil refinery and the chemical plant. Today's picture is a glimpse into the internals of Factorio. The screenshot shows a diagram of entities' (objects on the map) class inheritance structure generated by doxygen. If you feel like expressing your opinion regarding anything above then go ahead and do so on our forum.
Hello, the days here in Prague are getting longer so the afternoons (and evenings) in the office are becoming less and less depressive. We have been working with a good consistent effort for the past week and the results are IMHO there.
Hello, Robert here again. It's time for the information I teased about in the previous Friday Facts edition.
Hello, Albert is back this week, and has resumed his work on the liquid wagon and associated accessories, as well as offering his guidance to some visual related programming tasks. Kuba and Honza are also both back from their respective holidays, and overall the office is feeling much more full than last week.
I need to make a confession. I'm addicted. Addicted to optimisation.
Click to view full resolution It has been 6 months and nearly 70 releases since we first launched 0.17 to the world. Now is the time to let it be enjoyed by all the players of the game. We are going to be continuing our work on 0.17 over the next few months, with small experimental releases of new features, and finishing all the GUI reworks.
Hello, the office has had a very lively atmosphere this week. With some very productive team discussions taking place, we reach another Friday with an optimistic outlook of the weeks to come.